package thread;

/**
 * @author SWJ
 * @create 2021-06-23 11:01
 */
public class TestRunnable {
    public static void main(String[] args) {
TicketRunnable target=new TicketRunnable();
//以多线程的方式启动线程
        /**如果多线程的方式启动实现业务，需要借助Thread*/
        Thread t1=new Thread(target);
        //触发的是Thread的含参构造，将目标业务对象
        // target与Thread做绑定 将目标对象做绑定
        Thread t2=new Thread(target);
        Thread t3=new Thread(target);
        Thread t4=new Thread(target);

        t1.start();
        t2.start();
        t3.start();
        t4.start();

    }
}

class TicketRunnable implements Runnable {
   static int tickets =100;

    /**
     * @see Thread#run()
     */
    @Override
    public void run() {
        //创建循环结构，实现买票功能
        while (true) {
            System.out.println(Thread.currentThread().getName() + "=" + tickets--);
            //设置出口，没有票了的时候就停止tickets--进行售票
            if (tickets <= 0) {
                break;
            }

        }
    }
}
